package com.unitins.servidor;

import java.io.IOException;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.ArrayList;
import java.util.Scanner;

/**
 *Classe de Servidor
 * @author AKUMA
 */
public class Servidor{
    
    ServerSocket server = null;
    Socket socket = null;
    Scanner scanner = null;
    
    //Guarda todos os clientes que estão conectados no servidor
    //java.util.List<PrintWriter> escritores = new ArrayList<>();
    
    int clientesConec[] = new int[3]; 
    int i=2;
    Clientes c = new Clientes();
    String[] nomeCliente = null;
    
    //________________________CONSTRUCTOR________________________________________
    public Servidor(){
        try{
            server = new ServerSocket(3030);
            while(true){
                socket = server.accept();										//Aguarda mais clientes para conexao
                new Thread(new ReceberMsgCliente(socket)).start();
                PrintWriter printer = new PrintWriter(socket.getOutputStream());
                i++;
                //escritores.add(printer);
            }
        }catch(IOException e){
        }
    }
    
    public void pegaNomeClientes(String nome){
        for(int j=0;j<=i;j++){
            nomeCliente[j] = c.getNomeCliente();
        }
    }
    
    private class ReceberMsgCliente implements Runnable{
        Scanner leitor = null;
        public ReceberMsgCliente(Socket socket){
            try{
                 leitor = new Scanner(socket.getInputStream());
            }catch(IOException e){                
            }
        }
        
        @Override
        public void run() {
            try{
                String text;
                while((text = leitor.nextLine()) != null){
                    System.out.println(text);
                    //EncaminharTodos(text);
                }
            }catch(Exception x){                
            }
        }
        
    }
    
    public static void main(String[] args){
        new Servidor();
    }
    
}
